The present invention relates generally to managing memory by a computer processor, and more specifically, to determining whether blocks or regions of memory have been cleared.
In modern computer systems, memory use is accomplished by a limited set of algorithms that manage the use of memory blocks or sections. Such functions include pre-fetch functions and memory allocation functions that manage memory to select blocks that are available for storage in response to input of data to memory and/or requests of data from various devices (e.g., CPUs, virtual machines, control units, external devices or users, etc.). Memory management operations include assigning blocks of memory for use by a device, which typically requires clearing the blocks for use to ensure that data from previous usage is not stored therein. Each time the blocks are returned, the blocks are again cleared. In some instances, if blocks were not completely used, a portion of the assigned blocks already exists in a cleared state. In such instances, an effective double clearing is performed that can result in unnecessary use of time and processing resources.